<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Foto_lst( $this );

	class Foto_lst extends Lst
	{
	function Foto_lst( &$oModule )
		{
			$this->Lst( $oModule );
		}

	function setLevel()
		{
			switch ( $this->getOptionView() )
			{
				case 'R':
				case 'E':
					$this->aShowColumns = array( 'Fecha', 'Atractivo', 'Nombre', 'Archivo' , 'Usuario', 'ncEstadoPublicacion', 'cArchivo', 'Foto');
					break;
				case 'L':
					$this->aShowColumns = array( 'Fecha', 'Atractivo', 'Nombre', 'Archivo' , 'Usuario', 'ncEstadoPublicacion');
					break;
			}
			if ( array_key_exists( 'ncUsuario' , $this->aFields )  ) unset($this->aShowColumns[array_search( 'Usuario',$this->aShowColumns)]);
			if ( array_key_exists( 'ncAtractivo' , $this->aFields )  ) unset($this->aShowColumns[array_search( 'Atractivo',$this->aShowColumns)]);
		}
	function makeColumn ( $aRow, $cField )
		{
			switch( $cField )
			{
				case 'KeyLookUp':
					$cReturn = $aRow['ncOrden'];
					break;
				case 'Foto':
					$cReturn = $aRow['ncUsuario'] . '/' . $aRow['cArchivo'] ;
					break;
				case 'Usuario':
					$cReturn = $aRow['cNombre'] . ' ' . $aRow['cApellido'] . ' (' . $aRow['cAlias'] .')' ;
					break;
				default:
					return false;
			break;
			}
			return $cReturn;
		}
	function initialize()
		{
			$this->oFiltro = $this->oModule->loadClass( 'Foto_frm' );
			$this->aFields = array_merge ( (array)$this->aFields,  (array)$this->oFiltro->getFieldArray() );
			
			// Setea el titulo y la descripcion de la tabla
			$this->setTitle ( "Usuario Foto" );
			$this->setSummary( "Esta tabla contiene el listado de Usuario_Foto" );
			$this->addColumn ( 'Nombre', 'cTitulo', true );
			$this->addColumn ( 'Usuario', '', true );
			$this->addColumnMultilanguage ( 'Atractivo', 'cdAtractivo', 'es' );
			$this->setColumnAction ( 'Atractivo', VER_ATRACTIVO , 'ncAtractivo' );
			$this->addColumnImageUrl ( 'Foto', '', true, '580', 'http://www.buenosairesquerible.gov.ar/upload/usuarios' );
			//$this->addColumnImageUrl ( 'Foto', '', true, '580', 'http://localhost/mibaq/upload/usuarios' );
			$this->addColumnDate ( 'Fecha', 'dAlta', true );
			$this->addColumn( 'Archivo', 'cArchivo');
			$this->setColumnAction ( 'Nombre', VER_USUARIO_FOTO, 'ncOrden' );
			$this->setColumnAction ( 'Archivo', VER_USUARIO_FOTO, 'ncOrden' );
			$this->setColumnAction ( 'Usuario', VER_USUARIO_PORTAL, 'ncUsuario' );
			$aMatrix = $this->oDatabase->getKeyArray('SELECT ncEstadoPublicacion, cdEstadoPublicacion FROM gcEstadoPublicacion' );
			$this->addColumnUpdateable ( 'ncEstadoPublicacion', MODIFICAR_USUARIO_FOTO, 'ncOrden', $aMatrix, PARAM_TASK . '=2' );
			$oTab =& $this->setIndex( INDEX_USER, TAB_TOP, 'ncEstadoPublicacion' );
			$cSql = "SELECT ncEstadoPublicacion, cdEstadoPublicacion FROM gcEstadoPublicacion " ;
			$oTab->setMatrix ( $this->oDatabase->getMatrix($cSql) );
			$this->oModDocumentacion =& loadModule('documentacion');
			$this->setFieldName ( "cKeys[]" );			
			$this->oPaging->setDefaultOrderBy('Fot.dAlta', false);
		}
	function query()
		{
			// Arma el Query
				$cSql = "SELECT Fot.dAlta as dAlta, Usu.cApellido,Usu.cNombre,Usu.cAlias, Atr.cdAtractivo, Atr.ncAtractivo, Fot.ncUsuario, Fot.ncOrden, Fot.cArchivo, Fot.cTitulo, Fot.ncAtractivo, Fot.ncEstadoPublicacion
								FROM gtFoto as Fot
								LEFT JOIN gtAtractivo  as Atr ON Atr.ncAtractivo= Fot.ncAtractivo
								LEFT JOIN gtUsuario as Usu 
									ON Usu.ncUsuario = Fot.ncUsuario";
			// Arma el Filtro de la Consulta
				$this->oFiltro->setDefaultSearchField( "cdAtractivo" );
				$this->oWhere->addArray ( $this->oFiltro->getFilterdArray('Fot') );
			return $cSql . $this->oWhere->make();
		}
	function makeListActions()
		{
			$cParametroRegistro =  $this->getFieldString();
			$this->addListAction ( AGREGAR_USUARIO_FOTO, $cParametroRegistro, 'I' );
		}
	function makeSelectionActions()
		{
			$this->addSelectionAction ( MODERAR, 'nTipo=5');
		}
	function makeRowActions( $aRow )
		{
			$cParametroRegistro = "ncOrden=" . $aRow["ncOrden"];
			$cParametroRegistroB = "cKeys=" .  $aRow["ncOrden"];
			$this->addRowAction ( MODERAR, 'nTipo=5&amp;' . $cParametroRegistroB , '', VENTANA_SECUNDARIA );
			$this->addRowAction ( MODIFICAR_USUARIO_FOTO, $cParametroRegistro , '', VENTANA_SECUNDARIA );
			$this->addRowAction ( ELIMINAR_USUARIO_FOTO ,  $cParametroRegistro );
			$this->addRowActionModule ( $this->oModDocumentacion, CONSULTAR_ARCHIVOS_DE_UN_DIRECTORIO,  'cDirectorio=' . str_replace('/git/', '/mibaq/', PATH_ROOT) . 'upload/usuarios/'. $aRow['ncUsuario']  );
		}
	}
?>